class Solution {
public:
    int myAtoi(string str) { int  size=str.size();
        int flag=0;
        int number=0;
        int x=0;
        int j=0;
        if(size==0) return 0;
        for(int i=0;i<size;i++){
            if (str[i]==' '&&j==0){
                
            }
            else if(str[i]=='-'&&x==0&&j==0){
                flag=1;
                x++;
                j++;
            } else if(str[i]=='+'&&x==0&&j==0){
                flag=0;
                x++;
                j++;
            }
            else if('0'<=str[i]&&str[i]<='9'){
                int g=str[i]-'0';
                if ((number==INT_MAX/10&&g>7)||(number>INT_MAX/10) ) {
                    if (flag==1){
                        return INT_MIN;
                    }else  if(flag==0){
                        return INT_MAX;
                    }
                    
                }
               
                  number=number*10+g;
                j++;
            }
            else {
                break;
            }
        }
        if (flag==0){ }
        else if (flag==1){
            number=-number;
        }
         return number;
           
    }

};